598B - Queries on a String - CodeForces Solution


implementation strings *1300

Please click on ads to support us..

Python Code:

def shift(l,r,k,s):
    len = r-l+1
    shift = k%len
    end = r-shift+1
    out = s[:l]+s[end:r+1]+s[l:end]+s[r+1:]
    return out
s = input()
m = int(input())
for _ in range(m):
    l,r,k = tuple(map(int,input().split()))
    s = shift(l-1,r-1,k,s)

print(s)

C++ Code:

#include<bits/stdc++.h>
#define ll long long

using namespace std;
ll t, l, r, k;

int main()
{
	char s[11000], ss[11000];
	scanf("%s", &s);
	scanf("%lld", &t);
	while(t--)
	{
		scanf("%lld%lld%lld", &l, &r, &k);
		ll x = 0;
		for(ll i = l-1; i <= r-1; i++)
			ss[x++] = s[i];
		for(ll i = 0; i < x; i++)
			s[l - 1 + (i + k) % x] = ss[i];
	}
	printf("%s\n", s);
	return 0;
}


Comments

Submit
0 Comments
More Questions

1609C - Complex Market Analysis
1657E - Star MST
1143B - Nirvana
1285A - Mezo Playing Zoma
919B - Perfect Number
894A - QAQ
1551A - Polycarp and Coins
313A - Ilya and Bank Account
1469A - Regular Bracket Sequence
919C - Seat Arrangements
1634A - Reverse and Concatenate
1619C - Wrong Addition
1437A - Marketing Scheme
1473B - String LCM
1374A - Required Remainder
1265E - Beautiful Mirrors
1296A - Array with Odd Sum
1385A - Three Pairwise Maximums
911A - Nearest Minimums
102B - Sum of Digits
707A - Brain's Photos
1331B - Limericks
305B - Continued Fractions
1165B - Polycarp Training
1646C - Factorials and Powers of Two
596A - Wilbur and Swimming Pool
1462B - Last Year's Substring
1608B - Build the Permutation
1505A - Is it rated - 2
169A - Chores